Cover TOC Chap Prev Chap Prev Fig Next Fig Next Chap

Chapter 13: Building Shapes with Points, Lines, and Faces

../ch13/13fig16.gif
Figure 13.16

A vaulted ceiling piece used repeatedly to build part of a medieval building.

13fig16.wrl
Click on the image to view the VRML scene.

#VRML V2.0 utf8
# The VRML 2.0 Sourcebook
# Copyright (c) 1997
# Andrea L. Ames, David R. Nadeau, and John L. Moreland
Group {
    children [
    # Center vaulted ceiling
        DEF Ceiling Transform {
            translation 0.0 2.0 0.0
            children [
                DEF Vault Inline {
                    url "vault.wrl"
                },
                Transform { rotation 0.0 1.0 0.0 1.57
                    children USE Vault
                },
                Transform { rotation 0.0 1.0 0.0 3.14
                    children USE Vault
                },
                Transform { rotation 0.0 1.0 0.0 -1.57
                    children USE Vault
                }
            ]
        },
    # Left, right, front, and back vaulted ceilings
        Transform { translation -2.0 0.0  0.0  children USE Ceiling },
        Transform { translation  2.0 0.0  0.0  children USE Ceiling },
        Transform { translation  0.0 0.0 -2.0  children USE Ceiling },
        Transform { translation  0.0 0.0  2.0  children USE Ceiling },
    # Columns supporting the vaulted ceilings
        Transform {
            translation -3.0 1.0 -1.0
            children DEF Column Shape {
                appearance Appearance {
                    material Material { }
                }
                geometry Cylinder {
                    height 2.0
                    radius 0.05
                }
            }
        },
        Transform { translation -1.0 1.0 -1.0  children USE Column },
        Transform { translation  1.0 1.0 -1.0  children USE Column },
        Transform { translation  3.0 1.0 -1.0  children USE Column },
        Transform { translation -3.0 1.0  1.0  children USE Column },
        Transform { translation -1.0 1.0  1.0  children USE Column },
        Transform { translation  1.0 1.0  1.0  children USE Column },
        Transform { translation  3.0 1.0  1.0  children USE Column },
        Transform { translation -1.0 1.0 -3.0  children USE Column },
        Transform { translation -1.0 1.0  3.0  children USE Column },
        Transform { translation  1.0 1.0 -3.0  children USE Column },
        Transform { translation  1.0 1.0  3.0  children USE Column }
    ]
}